TSTP Solution File: ALG267^1 by Satallax---3.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Satallax---3.5
% Problem  : ALG267^1 : TPTP v8.1.0. Bugfixed v5.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : satallax -E eprover-ho -P picomus -M modes -p tstp -t %d %s

% Computer : n026.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 600s
% DateTime : Thu Jul 14 17:57:51 EDT 2022

% Result   : Timeout 287.30s 286.27s
% Output   : None 
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   31
%            Number of leaves      :   88
% Syntax   : Number of formulae    :  228 (  90 unt;   0 typ;  38 def)
%            Number of atoms       : 1424 ( 201 equ;   0 cnn)
%            Maximal formula atoms :  124 (   6 avg)
%            Number of connectives : 2203 ( 221   ~; 135   |;   0   &;1440   @)
%                                         (   0 <=>; 398  =>;   1  <=;   0 <~>)
%            Maximal formula depth :   52 (   3 avg)
%            Number of types       :    1 (   0 usr)
%            Number of type conns  :   84 (  84   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  106 ( 103 usr; 105 con; 0-2 aty)
%                                         (   8  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   :  536 (   0   ^ 536   !;   0   ?; 536   :)

% Comments : 
%------------------------------------------------------------------------------
thf(def_axapp,definition,
    ( axapp
    = ( ! [X1: term,X2: term,X3: subst] :
          ( ( sub @ ( ap @ X1 @ X2 ) @ X3 )
          = ( ap @ ( sub @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) ) ) ) ) ).

thf(def_axvarcons,definition,
    ( axvarcons
    = ( ! [X1: term,X2: subst] :
          ( ( sub @ one @ ( push @ X1 @ X2 ) )
          = X1 ) ) ) ).

thf(def_axvarid,definition,
    ( axvarid
    = ( ! [X1: term] :
          ( ( sub @ X1 @ id )
          = X1 ) ) ) ).

thf(def_axabs,definition,
    ( axabs
    = ( ! [X1: term,X2: subst] :
          ( ( sub @ ( lam @ X1 ) @ X2 )
          = ( lam @ ( sub @ X1 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) ) ) ) ).

thf(def_axclos,definition,
    ( axclos
    = ( ! [X1: term,X2: subst,X3: subst] :
          ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
          = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) ) ) ) ).

thf(def_axidl,definition,
    ( axidl
    = ( ! [X1: subst] :
          ( ( comp @ id @ X1 )
          = X1 ) ) ) ).

thf(def_axshiftcons,definition,
    ( axshiftcons
    = ( ! [X1: term,X2: subst] :
          ( ( comp @ sh @ ( push @ X1 @ X2 ) )
          = X2 ) ) ) ).

thf(def_axassoc,definition,
    ( axassoc
    = ( ! [X1: subst,X2: subst,X3: subst] :
          ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
          = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) ) ) ) ).

thf(def_axmap,definition,
    ( axmap
    = ( ! [X1: term,X2: subst,X3: subst] :
          ( ( comp @ ( push @ X1 @ X2 ) @ X3 )
          = ( push @ ( sub @ X1 @ X3 ) @ ( comp @ X2 @ X3 ) ) ) ) ) ).

thf(def_axidr,definition,
    ( axidr
    = ( ! [X1: subst] :
          ( ( comp @ X1 @ id )
          = X1 ) ) ) ).

thf(def_axvarshift,definition,
    ( axvarshift
    = ( ( push @ one @ sh )
      = id ) ) ).

thf(def_axscons,definition,
    ( axscons
    = ( ! [X1: subst] :
          ( ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) )
          = X1 ) ) ) ).

thf(def_ulamvar1,definition,
    ( ulamvar1
    = ( var @ one ) ) ).

thf(def_ulamvarsh,definition,
    ( ulamvarsh
    = ( ! [X1: term] :
          ( ( var @ X1 )
         => ( var @ ( sub @ X1 @ sh ) ) ) ) ) ).

thf(def_ulamvarind,definition,
    ( ulamvarind
    = ( ! [X1: term > $o] :
          ( ( X1 @ one )
         => ( ! [X2: term] :
                ( ( var @ X2 )
               => ( ( X1 @ X2 )
                 => ( X1 @ ( sub @ X2 @ sh ) ) ) )
           => ! [X2: term] :
                ( ( var @ X2 )
               => ( X1 @ X2 ) ) ) ) ) ) ).

thf(def_apinj1,definition,
    ( apinj1
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ X1 @ X3 )
            = ( ap @ X2 @ X4 ) )
         => ( X1 = X2 ) ) ) ) ).

thf(def_apinj2,definition,
    ( apinj2
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( ap @ X1 @ X3 )
            = ( ap @ X2 @ X4 ) )
         => ( X3 = X4 ) ) ) ) ).

thf(def_laminj,definition,
    ( laminj
    = ( ! [X1: term,X2: term] :
          ( ( ( lam @ X1 )
            = ( lam @ X2 ) )
         => ( X1 = X2 ) ) ) ) ).

thf(def_shinj,definition,
    ( shinj
    = ( ! [X1: term,X2: term] :
          ( ( ( sub @ X1 @ sh )
            = ( sub @ X2 @ sh ) )
         => ( X1 = X2 ) ) ) ) ).

thf(def_lamnotap,definition,
    ( lamnotap
    = ( ! [X1: term,X2: term,X3: term] :
          ( ( lam @ X1 )
         != ( ap @ X2 @ X3 ) ) ) ) ).

thf(def_apnotvar,definition,
    ( apnotvar
    = ( ! [X1: term,X2: term] :
          ~ ( var @ ( ap @ X1 @ X2 ) ) ) ) ).

thf(def_lamnotvar,definition,
    ( lamnotvar
    = ( ! [X1: term] :
          ~ ( var @ ( lam @ X1 ) ) ) ) ).

thf(def_induction,definition,
    ( induction
    = ( ! [X1: term > $o] :
          ( ! [X2: term] :
              ( ( var @ X2 )
             => ( X1 @ X2 ) )
         => ( ! [X2: term,X3: term] :
                ( ( X1 @ X2 )
               => ( ( X1 @ X3 )
                 => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
           => ( ! [X2: term] :
                  ( ( X1 @ X2 )
                 => ( X1 @ ( lam @ X2 ) ) )
             => ( !! @ X1 ) ) ) ) ) ) ).

thf(def_pushprop,definition,
    ( pushprop
    = ( ! [X1: term > $o,X2: term,X3: subst] :
          ( ! [X4: term] :
              ( ( var @ X4 )
             => ( X1 @ ( sub @ X4 @ X3 ) ) )
         => ( ( X1 @ X2 )
           => ! [X4: term] :
                ( ( var @ X4 )
               => ( X1 @ ( sub @ X4 @ ( push @ X2 @ X3 ) ) ) ) ) ) ) ) ).

thf(def_induction2lem,definition,
    ( induction2lem
    = ( ! [X1: term > $o] :
          ( ! [X2: term,X3: term] :
              ( ( X1 @ X2 )
             => ( ( X1 @ X3 )
               => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
         => ( ! [X2: term] :
                ( ! [X3: term] :
                    ( ( X1 @ X3 )
                   => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
               => ( X1 @ ( lam @ X2 ) ) )
           => ! [X2: term,X3: subst] :
                ( ! [X4: term] :
                    ( ( var @ X4 )
                   => ( X1 @ ( sub @ X4 @ X3 ) ) )
               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) ) ) ) ).

thf(def_induction2,definition,
    ( induction2
    = ( ! [X1: term > $o] :
          ( ! [X2: term] :
              ( ( var @ X2 )
             => ( X1 @ X2 ) )
         => ( ! [X2: term,X3: term] :
                ( ( X1 @ X2 )
               => ( ( X1 @ X3 )
                 => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
           => ( ! [X2: term] :
                  ( ! [X3: term] :
                      ( ( X1 @ X3 )
                     => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                 => ( X1 @ ( lam @ X2 ) ) )
             => ( !! @ X1 ) ) ) ) ) ) ).

thf(def_substmonoid,definition,
    ( substmonoid
    = ( ~ ( ~ ( ! [X1: subst,X2: subst,X3: subst] :
                  ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                  = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
             => ~ ! [X1: subst] :
                    ( ( comp @ id @ X1 )
                    = X1 ) )
         => ~ ! [X1: subst] :
                ( ( comp @ X1 @ id )
                = X1 ) ) ) ) ).

thf(def_termmset,definition,
    ( termmset
    = ( ~ ( ! [X1: term,X2: subst,X3: subst] :
              ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
              = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
         => ~ ! [X1: term] :
                ( ( sub @ X1 @ id )
                = X1 ) ) ) ) ).

thf(def_hoasapinj1,definition,
    ( hoasapinj1
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( hoasap @ id @ X1 @ id @ X3 )
            = ( hoasap @ id @ X2 @ id @ X4 ) )
         => ( X1 = X2 ) ) ) ) ).

thf(def_hoasapinj2,definition,
    ( hoasapinj2
    = ( ! [X1: term,X2: term,X3: term,X4: term] :
          ( ( ( hoasap @ id @ X1 @ id @ X3 )
            = ( hoasap @ id @ X2 @ id @ X4 ) )
         => ( X3 = X4 ) ) ) ) ).

thf(def_hoaslaminj,definition,
    ( hoaslaminj
    = ( ! [X1: subst > term > term] :
          ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ! [X2: subst > term > term] :
              ( ! [X3: subst,X4: term,X5: subst] :
                  ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                  = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
             => ( ( ( hoaslam @ id @ X1 )
                  = ( hoaslam @ id @ X2 ) )
               => ! [X3: subst,X4: term] :
                    ( ( X1 @ X3 @ X4 )
                    = ( X2 @ X3 @ X4 ) ) ) ) ) ) ) ).

thf(def_hoaslamnotap,definition,
    ( hoaslamnotap
    = ( ! [X1: subst > term > term] :
          ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ! [X2: term,X3: term] :
              ( ( hoaslam @ id @ X1 )
             != ( hoasap @ id @ X2 @ id @ X3 ) ) ) ) ) ).

thf(def_hoaslamnotvar,definition,
    ( hoaslamnotvar
    = ( ! [X1: subst > term > term] :
          ( ! [X2: subst,X3: term,X4: subst] :
              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
         => ~ ( hoasvar @ id @ ( hoaslam @ id @ X1 ) @ id ) ) ) ) ).

thf(def_hoasapnotvar,definition,
    ( hoasapnotvar
    = ( ! [X1: term,X2: term] :
          ~ ( hoasvar @ id @ ( hoasap @ id @ X1 @ id @ X2 ) @ id ) ) ) ).

thf(def_hoasinduction_lem1,definition,
    ( hoasinduction_lem1
    = ( ! [X1: subst > term > subst > $o] :
          ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
              ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
             => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
         => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
               => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
           => ( ! [X2: term] :
                  ( ( hoasvar @ id @ X2 @ id )
                 => ( X1 @ id @ X2 @ id ) )
             => ! [X2: term] :
                  ( ( var @ X2 )
                 => ( X1 @ id @ X2 @ id ) ) ) ) ) ) ) ).

thf(def_hoasinduction_lem2,definition,
    ( hoasinduction_lem2
    = ( ! [X1: subst > term > subst > $o] :
          ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
              ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
             => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
         => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
               => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
           => ( ! [X2: term,X3: term] :
                  ( ( X1 @ id @ X2 @ id )
                 => ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( hoasap @ id @ X2 @ id @ X3 ) @ id ) ) )
             => ! [X2: term,X3: term] :
                  ( ( X1 @ id @ X2 @ id )
                 => ( ( X1 @ id @ X3 @ id )
                   => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) ) ) ) ) ).

thf(def_hoasinduction_lem3b,definition,
    ( hoasinduction_lem3b
    = ( ! [X1: term] :
          ~ ! [X2: subst > term > term] :
              ( ( sub @ X1 @ ( push @ one @ sh ) )
             != ( X2 @ sh @ one ) ) ) ) ).

thf(def_hoasinduction_lem3b_gthm,definition,
    ( hoasinduction_lem3b_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

thf(thm,conjecture,
    ( ! [X1: term,X2: term,X3: subst] :
        ( ( sub @ ( ap @ X1 @ X2 ) @ X3 )
        = ( ap @ ( sub @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) ) )
   => ( ! [X1: term,X2: subst] :
          ( ( sub @ one @ ( push @ X1 @ X2 ) )
          = X1 )
     => ( ! [X1: term] :
            ( ( sub @ X1 @ id )
            = X1 )
       => ( ! [X1: term,X2: subst] :
              ( ( sub @ ( lam @ X1 ) @ X2 )
              = ( lam @ ( sub @ X1 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) )
         => ( ! [X1: term,X2: subst,X3: subst] :
                ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
                = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
           => ( ! [X1: subst] :
                  ( ( comp @ id @ X1 )
                  = X1 )
             => ( ! [X1: term,X2: subst] :
                    ( ( comp @ sh @ ( push @ X1 @ X2 ) )
                    = X2 )
               => ( ! [X1: subst,X2: subst,X3: subst] :
                      ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                      = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
                 => ( ! [X1: term,X2: subst,X3: subst] :
                        ( ( comp @ ( push @ X1 @ X2 ) @ X3 )
                        = ( push @ ( sub @ X1 @ X3 ) @ ( comp @ X2 @ X3 ) ) )
                   => ( ! [X1: subst] :
                          ( ( comp @ X1 @ id )
                          = X1 )
                     => ( ( ( push @ one @ sh )
                          = id )
                       => ( ! [X1: subst] :
                              ( ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) )
                              = X1 )
                         => ( ( var @ one )
                           => ( ! [X1: term] :
                                  ( ( var @ X1 )
                                 => ( var @ ( sub @ X1 @ sh ) ) )
                             => ( ! [X1: term > $o] :
                                    ( ( X1 @ one )
                                   => ( ! [X2: term] :
                                          ( ( var @ X2 )
                                         => ( ( X1 @ X2 )
                                           => ( X1 @ ( sub @ X2 @ sh ) ) ) )
                                     => ! [X2: term] :
                                          ( ( var @ X2 )
                                         => ( X1 @ X2 ) ) ) )
                               => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                      ( ( ( ap @ X1 @ X3 )
                                        = ( ap @ X2 @ X4 ) )
                                     => ( X1 = X2 ) )
                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                        ( ( ( ap @ X1 @ X3 )
                                          = ( ap @ X2 @ X4 ) )
                                       => ( X3 = X4 ) )
                                   => ( ! [X1: term,X2: term] :
                                          ( ( ( lam @ X1 )
                                            = ( lam @ X2 ) )
                                         => ( X1 = X2 ) )
                                     => ( ! [X1: term,X2: term] :
                                            ( ( ( sub @ X1 @ sh )
                                              = ( sub @ X2 @ sh ) )
                                           => ( X1 = X2 ) )
                                       => ( ! [X1: term,X2: term,X3: term] :
                                              ( ( lam @ X1 )
                                             != ( ap @ X2 @ X3 ) )
                                         => ( ! [X1: term,X2: term] :
                                                ~ ( var @ ( ap @ X1 @ X2 ) )
                                           => ( ! [X1: term] :
                                                  ~ ( var @ ( lam @ X1 ) )
                                             => ( ! [X1: term > $o] :
                                                    ( ! [X2: term] :
                                                        ( ( var @ X2 )
                                                       => ( X1 @ X2 ) )
                                                   => ( ! [X2: term,X3: term] :
                                                          ( ( X1 @ X2 )
                                                         => ( ( X1 @ X3 )
                                                           => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                     => ( ! [X2: term] :
                                                            ( ( X1 @ X2 )
                                                           => ( X1 @ ( lam @ X2 ) ) )
                                                       => ( !! @ X1 ) ) ) )
                                               => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                      ( ! [X4: term] :
                                                          ( ( var @ X4 )
                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) )
                                                     => ( ( X1 @ X2 )
                                                       => ! [X4: term] :
                                                            ( ( var @ X4 )
                                                           => ( X1 @ ( sub @ X4 @ ( push @ X2 @ X3 ) ) ) ) ) )
                                                 => ( ! [X1: term > $o] :
                                                        ( ! [X2: term,X3: term] :
                                                            ( ( X1 @ X2 )
                                                           => ( ( X1 @ X3 )
                                                             => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                       => ( ! [X2: term] :
                                                              ( ! [X3: term] :
                                                                  ( ( X1 @ X3 )
                                                                 => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                                                             => ( X1 @ ( lam @ X2 ) ) )
                                                         => ! [X2: term,X3: subst] :
                                                              ( ! [X4: term] :
                                                                  ( ( var @ X4 )
                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) )
                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) )
                                                   => ( ! [X1: term > $o] :
                                                          ( ! [X2: term] :
                                                              ( ( var @ X2 )
                                                             => ( X1 @ X2 ) )
                                                         => ( ! [X2: term,X3: term] :
                                                                ( ( X1 @ X2 )
                                                               => ( ( X1 @ X3 )
                                                                 => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                           => ( ! [X2: term] :
                                                                  ( ! [X3: term] :
                                                                      ( ( X1 @ X3 )
                                                                     => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                                                                 => ( X1 @ ( lam @ X2 ) ) )
                                                             => ( !! @ X1 ) ) ) )
                                                     => ( ~ ( ~ ( ! [X1: subst,X2: subst,X3: subst] :
                                                                    ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                                                                    = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
                                                               => ~ ! [X1: subst] :
                                                                      ( ( comp @ id @ X1 )
                                                                      = X1 ) )
                                                           => ~ ! [X1: subst] :
                                                                  ( ( comp @ X1 @ id )
                                                                  = X1 ) )
                                                       => ( ~ ( ! [X1: term,X2: subst,X3: subst] :
                                                                  ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
                                                                  = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
                                                             => ~ ! [X1: term] :
                                                                    ( ( sub @ X1 @ id )
                                                                    = X1 ) )
                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                ( ( ( hoasap @ id @ X1 @ id @ X3 )
                                                                  = ( hoasap @ id @ X2 @ id @ X4 ) )
                                                               => ( X1 = X2 ) )
                                                           => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                  ( ( ( hoasap @ id @ X1 @ id @ X3 )
                                                                    = ( hoasap @ id @ X2 @ id @ X4 ) )
                                                                 => ( X3 = X4 ) )
                                                             => ( ! [X1: subst > term > term] :
                                                                    ( ! [X2: subst,X3: term,X4: subst] :
                                                                        ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                        = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                   => ! [X2: subst > term > term] :
                                                                        ( ! [X3: subst,X4: term,X5: subst] :
                                                                            ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                                                                            = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                                                                       => ( ( ( hoaslam @ id @ X1 )
                                                                            = ( hoaslam @ id @ X2 ) )
                                                                         => ! [X3: subst,X4: term] :
                                                                              ( ( X1 @ X3 @ X4 )
                                                                              = ( X2 @ X3 @ X4 ) ) ) ) )
                                                               => ( ! [X1: subst > term > term] :
                                                                      ( ! [X2: subst,X3: term,X4: subst] :
                                                                          ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                          = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                     => ! [X2: term,X3: term] :
                                                                          ( ( hoaslam @ id @ X1 )
                                                                         != ( hoasap @ id @ X2 @ id @ X3 ) ) )
                                                                 => ( ! [X1: subst > term > term] :
                                                                        ( ! [X2: subst,X3: term,X4: subst] :
                                                                            ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                            = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                       => ~ ( hoasvar @ id @ ( hoaslam @ id @ X1 ) @ id ) )
                                                                   => ( ! [X1: term,X2: term] :
                                                                          ~ ( hoasvar @ id @ ( hoasap @ id @ X1 @ id @ X2 ) @ id )
                                                                     => ( ! [X1: subst > term > subst > $o] :
                                                                            ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                                                                               => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                                                                           => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                  ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                                                                                 => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
                                                                             => ( ! [X2: term] :
                                                                                    ( ( hoasvar @ id @ X2 @ id )
                                                                                   => ( X1 @ id @ X2 @ id ) )
                                                                               => ! [X2: term] :
                                                                                    ( ( var @ X2 )
                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                       => ( ! [X1: subst > term > subst > $o] :
                                                                              ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                  ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                                                                                 => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                                                                             => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                    ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                                                                                   => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
                                                                               => ( ! [X2: term,X3: term] :
                                                                                      ( ( X1 @ id @ X2 @ id )
                                                                                     => ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( hoasap @ id @ X2 @ id @ X3 ) @ id ) ) )
                                                                                 => ! [X2: term,X3: term] :
                                                                                      ( ( X1 @ id @ X2 @ id )
                                                                                     => ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) ) )
                                                                         => ! [X1: term] :
                                                                              ~ ! [X2: subst > term > term] :
                                                                                  ( ( sub @ X1 @ ( push @ one @ sh ) )
                                                                                 != ( X2 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

thf(h0,negated_conjecture,
    ~ ( ! [X1: term,X2: term,X3: subst] :
          ( ( sub @ ( ap @ X1 @ X2 ) @ X3 )
          = ( ap @ ( sub @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) ) )
     => ( ! [X1: term,X2: subst] :
            ( ( sub @ one @ ( push @ X1 @ X2 ) )
            = X1 )
       => ( ! [X1: term] :
              ( ( sub @ X1 @ id )
              = X1 )
         => ( ! [X1: term,X2: subst] :
                ( ( sub @ ( lam @ X1 ) @ X2 )
                = ( lam @ ( sub @ X1 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) )
           => ( ! [X1: term,X2: subst,X3: subst] :
                  ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
                  = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
             => ( ! [X1: subst] :
                    ( ( comp @ id @ X1 )
                    = X1 )
               => ( ! [X1: term,X2: subst] :
                      ( ( comp @ sh @ ( push @ X1 @ X2 ) )
                      = X2 )
                 => ( ! [X1: subst,X2: subst,X3: subst] :
                        ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                        = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
                   => ( ! [X1: term,X2: subst,X3: subst] :
                          ( ( comp @ ( push @ X1 @ X2 ) @ X3 )
                          = ( push @ ( sub @ X1 @ X3 ) @ ( comp @ X2 @ X3 ) ) )
                     => ( ! [X1: subst] :
                            ( ( comp @ X1 @ id )
                            = X1 )
                       => ( ( ( push @ one @ sh )
                            = id )
                         => ( ! [X1: subst] :
                                ( ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) )
                                = X1 )
                           => ( ( var @ one )
                             => ( ! [X1: term] :
                                    ( ( var @ X1 )
                                   => ( var @ ( sub @ X1 @ sh ) ) )
                               => ( ! [X1: term > $o] :
                                      ( ( X1 @ one )
                                     => ( ! [X2: term] :
                                            ( ( var @ X2 )
                                           => ( ( X1 @ X2 )
                                             => ( X1 @ ( sub @ X2 @ sh ) ) ) )
                                       => ! [X2: term] :
                                            ( ( var @ X2 )
                                           => ( X1 @ X2 ) ) ) )
                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                        ( ( ( ap @ X1 @ X3 )
                                          = ( ap @ X2 @ X4 ) )
                                       => ( X1 = X2 ) )
                                   => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                          ( ( ( ap @ X1 @ X3 )
                                            = ( ap @ X2 @ X4 ) )
                                         => ( X3 = X4 ) )
                                     => ( ! [X1: term,X2: term] :
                                            ( ( ( lam @ X1 )
                                              = ( lam @ X2 ) )
                                           => ( X1 = X2 ) )
                                       => ( ! [X1: term,X2: term] :
                                              ( ( ( sub @ X1 @ sh )
                                                = ( sub @ X2 @ sh ) )
                                             => ( X1 = X2 ) )
                                         => ( ! [X1: term,X2: term,X3: term] :
                                                ( ( lam @ X1 )
                                               != ( ap @ X2 @ X3 ) )
                                           => ( ! [X1: term,X2: term] :
                                                  ~ ( var @ ( ap @ X1 @ X2 ) )
                                             => ( ! [X1: term] :
                                                    ~ ( var @ ( lam @ X1 ) )
                                               => ( ! [X1: term > $o] :
                                                      ( ! [X2: term] :
                                                          ( ( var @ X2 )
                                                         => ( X1 @ X2 ) )
                                                     => ( ! [X2: term,X3: term] :
                                                            ( ( X1 @ X2 )
                                                           => ( ( X1 @ X3 )
                                                             => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                       => ( ! [X2: term] :
                                                              ( ( X1 @ X2 )
                                                             => ( X1 @ ( lam @ X2 ) ) )
                                                         => ( !! @ X1 ) ) ) )
                                                 => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                        ( ! [X4: term] :
                                                            ( ( var @ X4 )
                                                           => ( X1 @ ( sub @ X4 @ X3 ) ) )
                                                       => ( ( X1 @ X2 )
                                                         => ! [X4: term] :
                                                              ( ( var @ X4 )
                                                             => ( X1 @ ( sub @ X4 @ ( push @ X2 @ X3 ) ) ) ) ) )
                                                   => ( ! [X1: term > $o] :
                                                          ( ! [X2: term,X3: term] :
                                                              ( ( X1 @ X2 )
                                                             => ( ( X1 @ X3 )
                                                               => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                         => ( ! [X2: term] :
                                                                ( ! [X3: term] :
                                                                    ( ( X1 @ X3 )
                                                                   => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                                                               => ( X1 @ ( lam @ X2 ) ) )
                                                           => ! [X2: term,X3: subst] :
                                                                ( ! [X4: term] :
                                                                    ( ( var @ X4 )
                                                                   => ( X1 @ ( sub @ X4 @ X3 ) ) )
                                                               => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) )
                                                     => ( ! [X1: term > $o] :
                                                            ( ! [X2: term] :
                                                                ( ( var @ X2 )
                                                               => ( X1 @ X2 ) )
                                                           => ( ! [X2: term,X3: term] :
                                                                  ( ( X1 @ X2 )
                                                                 => ( ( X1 @ X3 )
                                                                   => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                             => ( ! [X2: term] :
                                                                    ( ! [X3: term] :
                                                                        ( ( X1 @ X3 )
                                                                       => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                                                                   => ( X1 @ ( lam @ X2 ) ) )
                                                               => ( !! @ X1 ) ) ) )
                                                       => ( ~ ( ~ ( ! [X1: subst,X2: subst,X3: subst] :
                                                                      ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                                                                      = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
                                                                 => ~ ! [X1: subst] :
                                                                        ( ( comp @ id @ X1 )
                                                                        = X1 ) )
                                                             => ~ ! [X1: subst] :
                                                                    ( ( comp @ X1 @ id )
                                                                    = X1 ) )
                                                         => ( ~ ( ! [X1: term,X2: subst,X3: subst] :
                                                                    ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
                                                                    = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
                                                               => ~ ! [X1: term] :
                                                                      ( ( sub @ X1 @ id )
                                                                      = X1 ) )
                                                           => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                  ( ( ( hoasap @ id @ X1 @ id @ X3 )
                                                                    = ( hoasap @ id @ X2 @ id @ X4 ) )
                                                                 => ( X1 = X2 ) )
                                                             => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                    ( ( ( hoasap @ id @ X1 @ id @ X3 )
                                                                      = ( hoasap @ id @ X2 @ id @ X4 ) )
                                                                   => ( X3 = X4 ) )
                                                               => ( ! [X1: subst > term > term] :
                                                                      ( ! [X2: subst,X3: term,X4: subst] :
                                                                          ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                          = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                     => ! [X2: subst > term > term] :
                                                                          ( ! [X3: subst,X4: term,X5: subst] :
                                                                              ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                                                                              = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                                                                         => ( ( ( hoaslam @ id @ X1 )
                                                                              = ( hoaslam @ id @ X2 ) )
                                                                           => ! [X3: subst,X4: term] :
                                                                                ( ( X1 @ X3 @ X4 )
                                                                                = ( X2 @ X3 @ X4 ) ) ) ) )
                                                                 => ( ! [X1: subst > term > term] :
                                                                        ( ! [X2: subst,X3: term,X4: subst] :
                                                                            ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                            = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                       => ! [X2: term,X3: term] :
                                                                            ( ( hoaslam @ id @ X1 )
                                                                           != ( hoasap @ id @ X2 @ id @ X3 ) ) )
                                                                   => ( ! [X1: subst > term > term] :
                                                                          ( ! [X2: subst,X3: term,X4: subst] :
                                                                              ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                              = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                         => ~ ( hoasvar @ id @ ( hoaslam @ id @ X1 ) @ id ) )
                                                                     => ( ! [X1: term,X2: term] :
                                                                            ~ ( hoasvar @ id @ ( hoasap @ id @ X1 @ id @ X2 ) @ id )
                                                                       => ( ! [X1: subst > term > subst > $o] :
                                                                              ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                  ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                                                                                 => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                                                                             => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                    ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                                                                                   => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
                                                                               => ( ! [X2: term] :
                                                                                      ( ( hoasvar @ id @ X2 @ id )
                                                                                     => ( X1 @ id @ X2 @ id ) )
                                                                                 => ! [X2: term] :
                                                                                      ( ( var @ X2 )
                                                                                     => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                         => ( ! [X1: subst > term > subst > $o] :
                                                                                ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                    ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                                                                                   => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                                                                               => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                      ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                                                                                     => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
                                                                                 => ( ! [X2: term,X3: term] :
                                                                                        ( ( X1 @ id @ X2 @ id )
                                                                                       => ( ( X1 @ id @ X3 @ id )
                                                                                         => ( X1 @ id @ ( hoasap @ id @ X2 @ id @ X3 ) @ id ) ) )
                                                                                   => ! [X2: term,X3: term] :
                                                                                        ( ( X1 @ id @ X2 @ id )
                                                                                       => ( ( X1 @ id @ X3 @ id )
                                                                                         => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) ) )
                                                                           => ! [X1: term] :
                                                                                ~ ! [X2: subst > term > term] :
                                                                                    ( ( sub @ X1 @ ( push @ one @ sh ) )
                                                                                   != ( X2 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(assume_negation,[status(cth)],[thm]) ).

thf(ax1746,axiom,
    ( p1
    | ~ p3 ),
    file('<stdin>',ax1746) ).

thf(ax1748,axiom,
    ~ p1,
    file('<stdin>',ax1748) ).

thf(ax1744,axiom,
    ( p3
    | ~ p5 ),
    file('<stdin>',ax1744) ).

thf(ax1742,axiom,
    ( p5
    | ~ p7 ),
    file('<stdin>',ax1742) ).

thf(ax1740,axiom,
    ( p7
    | ~ p9 ),
    file('<stdin>',ax1740) ).

thf(ax1738,axiom,
    ( p9
    | ~ p11 ),
    file('<stdin>',ax1738) ).

thf(ax1736,axiom,
    ( p11
    | ~ p13 ),
    file('<stdin>',ax1736) ).

thf(ax1734,axiom,
    ( p13
    | ~ p15 ),
    file('<stdin>',ax1734) ).

thf(ax1732,axiom,
    ( p15
    | ~ p17 ),
    file('<stdin>',ax1732) ).

thf(ax1730,axiom,
    ( p17
    | ~ p19 ),
    file('<stdin>',ax1730) ).

thf(ax1728,axiom,
    ( p19
    | ~ p21 ),
    file('<stdin>',ax1728) ).

thf(ax1726,axiom,
    ( p21
    | ~ p23 ),
    file('<stdin>',ax1726) ).

thf(ax1724,axiom,
    ( p23
    | ~ p25 ),
    file('<stdin>',ax1724) ).

thf(ax1722,axiom,
    ( p25
    | ~ p27 ),
    file('<stdin>',ax1722) ).

thf(ax1720,axiom,
    ( p27
    | ~ p29 ),
    file('<stdin>',ax1720) ).

thf(ax1535,axiom,
    ( ~ p208
    | p209 ),
    file('<stdin>',ax1535) ).

thf(ax1718,axiom,
    ( p29
    | ~ p31 ),
    file('<stdin>',ax1718) ).

thf(ax1534,axiom,
    ( ~ p209
    | p210 ),
    file('<stdin>',ax1534) ).

thf(ax1536,axiom,
    p208,
    file('<stdin>',ax1536) ).

thf(ax1716,axiom,
    ( p31
    | ~ p33 ),
    file('<stdin>',ax1716) ).

thf(ax1533,axiom,
    ( ~ p210
    | ~ p22
    | p207 ),
    file('<stdin>',ax1533) ).

thf(ax1727,axiom,
    ( p21
    | p22 ),
    file('<stdin>',ax1727) ).

thf(ax1714,axiom,
    ( p33
    | ~ p35 ),
    file('<stdin>',ax1714) ).

thf(pax207,axiom,
    ( p207
   => ( fid
      = ( fpush @ fone @ fsh ) ) ),
    file('<stdin>',pax207) ).

thf(pax6,axiom,
    ( p6
   => ! [X501: term] :
        ( ( fsub @ X501 @ fid )
        = X501 ) ),
    file('<stdin>',pax6) ).

thf(ax1743,axiom,
    ( p5
    | p6 ),
    file('<stdin>',ax1743) ).

thf(ax1712,axiom,
    ( p35
    | ~ p37 ),
    file('<stdin>',ax1712) ).

thf(nax463,axiom,
    ( p463
   <= ( ( fsub @ f__0 @ ( fpush @ fone @ fsh ) )
      = f__0 ) ),
    file('<stdin>',nax463) ).

thf(ax1710,axiom,
    ( p37
    | ~ p39 ),
    file('<stdin>',ax1710) ).

thf(ax1273,axiom,
    ( ~ p74
    | ~ p463 ),
    file('<stdin>',ax1273) ).

thf(ax1708,axiom,
    ( p39
    | ~ p41 ),
    file('<stdin>',ax1708) ).

thf(ax1706,axiom,
    ( p41
    | ~ p43 ),
    file('<stdin>',ax1706) ).

thf(ax1676,axiom,
    ( p71
    | ~ p73 ),
    file('<stdin>',ax1676) ).

thf(ax1675,axiom,
    ( p73
    | p74 ),
    file('<stdin>',ax1675) ).

thf(ax1704,axiom,
    ( p43
    | ~ p45 ),
    file('<stdin>',ax1704) ).

thf(ax1678,axiom,
    ( p69
    | ~ p71 ),
    file('<stdin>',ax1678) ).

thf(ax1702,axiom,
    ( p45
    | ~ p47 ),
    file('<stdin>',ax1702) ).

thf(ax1680,axiom,
    ( p67
    | ~ p69 ),
    file('<stdin>',ax1680) ).

thf(ax1700,axiom,
    ( p47
    | ~ p49 ),
    file('<stdin>',ax1700) ).

thf(ax1682,axiom,
    ( p65
    | ~ p67 ),
    file('<stdin>',ax1682) ).

thf(ax1698,axiom,
    ( p49
    | ~ p51 ),
    file('<stdin>',ax1698) ).

thf(ax1684,axiom,
    ( p63
    | ~ p65 ),
    file('<stdin>',ax1684) ).

thf(ax1696,axiom,
    ( p51
    | ~ p53 ),
    file('<stdin>',ax1696) ).

thf(ax1686,axiom,
    ( p61
    | ~ p63 ),
    file('<stdin>',ax1686) ).

thf(ax1694,axiom,
    ( p53
    | ~ p55 ),
    file('<stdin>',ax1694) ).

thf(ax1688,axiom,
    ( p59
    | ~ p61 ),
    file('<stdin>',ax1688) ).

thf(ax1692,axiom,
    ( p55
    | ~ p57 ),
    file('<stdin>',ax1692) ).

thf(ax1690,axiom,
    ( p57
    | ~ p59 ),
    file('<stdin>',ax1690) ).

thf(c_0_48,plain,
    ( p1
    | ~ p3 ),
    inference(fof_simplification,[status(thm)],[ax1746]) ).

thf(c_0_49,plain,
    ~ p1,
    inference(fof_simplification,[status(thm)],[ax1748]) ).

thf(c_0_50,plain,
    ( p3
    | ~ p5 ),
    inference(fof_simplification,[status(thm)],[ax1744]) ).

thf(c_0_51,plain,
    ( p1
    | ~ p3 ),
    inference(split_conjunct,[status(thm)],[c_0_48]) ).

thf(c_0_52,plain,
    ~ p1,
    inference(split_conjunct,[status(thm)],[c_0_49]) ).

thf(c_0_53,plain,
    ( p5
    | ~ p7 ),
    inference(fof_simplification,[status(thm)],[ax1742]) ).

thf(c_0_54,plain,
    ( p3
    | ~ p5 ),
    inference(split_conjunct,[status(thm)],[c_0_50]) ).

thf(c_0_55,plain,
    ~ p3,
    inference(sr,[status(thm)],[c_0_51,c_0_52]) ).

thf(c_0_56,plain,
    ( p7
    | ~ p9 ),
    inference(fof_simplification,[status(thm)],[ax1740]) ).

thf(c_0_57,plain,
    ( p5
    | ~ p7 ),
    inference(split_conjunct,[status(thm)],[c_0_53]) ).

thf(c_0_58,plain,
    ~ p5,
    inference(sr,[status(thm)],[c_0_54,c_0_55]) ).

thf(c_0_59,plain,
    ( p9
    | ~ p11 ),
    inference(fof_simplification,[status(thm)],[ax1738]) ).

thf(c_0_60,plain,
    ( p7
    | ~ p9 ),
    inference(split_conjunct,[status(thm)],[c_0_56]) ).

thf(c_0_61,plain,
    ~ p7,
    inference(sr,[status(thm)],[c_0_57,c_0_58]) ).

thf(c_0_62,plain,
    ( p11
    | ~ p13 ),
    inference(fof_simplification,[status(thm)],[ax1736]) ).

thf(c_0_63,plain,
    ( p9
    | ~ p11 ),
    inference(split_conjunct,[status(thm)],[c_0_59]) ).

thf(c_0_64,plain,
    ~ p9,
    inference(sr,[status(thm)],[c_0_60,c_0_61]) ).

thf(c_0_65,plain,
    ( p13
    | ~ p15 ),
    inference(fof_simplification,[status(thm)],[ax1734]) ).

thf(c_0_66,plain,
    ( p11
    | ~ p13 ),
    inference(split_conjunct,[status(thm)],[c_0_62]) ).

thf(c_0_67,plain,
    ~ p11,
    inference(sr,[status(thm)],[c_0_63,c_0_64]) ).

thf(c_0_68,plain,
    ( p15
    | ~ p17 ),
    inference(fof_simplification,[status(thm)],[ax1732]) ).

thf(c_0_69,plain,
    ( p13
    | ~ p15 ),
    inference(split_conjunct,[status(thm)],[c_0_65]) ).

thf(c_0_70,plain,
    ~ p13,
    inference(sr,[status(thm)],[c_0_66,c_0_67]) ).

thf(c_0_71,plain,
    ( p17
    | ~ p19 ),
    inference(fof_simplification,[status(thm)],[ax1730]) ).

thf(c_0_72,plain,
    ( p15
    | ~ p17 ),
    inference(split_conjunct,[status(thm)],[c_0_68]) ).

thf(c_0_73,plain,
    ~ p15,
    inference(sr,[status(thm)],[c_0_69,c_0_70]) ).

thf(c_0_74,plain,
    ( p19
    | ~ p21 ),
    inference(fof_simplification,[status(thm)],[ax1728]) ).

thf(c_0_75,plain,
    ( p17
    | ~ p19 ),
    inference(split_conjunct,[status(thm)],[c_0_71]) ).

thf(c_0_76,plain,
    ~ p17,
    inference(sr,[status(thm)],[c_0_72,c_0_73]) ).

thf(c_0_77,plain,
    ( p21
    | ~ p23 ),
    inference(fof_simplification,[status(thm)],[ax1726]) ).

thf(c_0_78,plain,
    ( p19
    | ~ p21 ),
    inference(split_conjunct,[status(thm)],[c_0_74]) ).

thf(c_0_79,plain,
    ~ p19,
    inference(sr,[status(thm)],[c_0_75,c_0_76]) ).

thf(c_0_80,plain,
    ( p23
    | ~ p25 ),
    inference(fof_simplification,[status(thm)],[ax1724]) ).

thf(c_0_81,plain,
    ( p21
    | ~ p23 ),
    inference(split_conjunct,[status(thm)],[c_0_77]) ).

thf(c_0_82,plain,
    ~ p21,
    inference(sr,[status(thm)],[c_0_78,c_0_79]) ).

thf(c_0_83,plain,
    ( p25
    | ~ p27 ),
    inference(fof_simplification,[status(thm)],[ax1722]) ).

thf(c_0_84,plain,
    ( p23
    | ~ p25 ),
    inference(split_conjunct,[status(thm)],[c_0_80]) ).

thf(c_0_85,plain,
    ~ p23,
    inference(sr,[status(thm)],[c_0_81,c_0_82]) ).

thf(c_0_86,plain,
    ( p27
    | ~ p29 ),
    inference(fof_simplification,[status(thm)],[ax1720]) ).

thf(c_0_87,plain,
    ( p25
    | ~ p27 ),
    inference(split_conjunct,[status(thm)],[c_0_83]) ).

thf(c_0_88,plain,
    ~ p25,
    inference(sr,[status(thm)],[c_0_84,c_0_85]) ).

thf(c_0_89,plain,
    ( ~ p208
    | p209 ),
    inference(fof_simplification,[status(thm)],[ax1535]) ).

thf(c_0_90,plain,
    ( p29
    | ~ p31 ),
    inference(fof_simplification,[status(thm)],[ax1718]) ).

thf(c_0_91,plain,
    ( p27
    | ~ p29 ),
    inference(split_conjunct,[status(thm)],[c_0_86]) ).

thf(c_0_92,plain,
    ~ p27,
    inference(sr,[status(thm)],[c_0_87,c_0_88]) ).

thf(c_0_93,plain,
    ( ~ p209
    | p210 ),
    inference(fof_simplification,[status(thm)],[ax1534]) ).

thf(c_0_94,plain,
    ( p209
    | ~ p208 ),
    inference(split_conjunct,[status(thm)],[c_0_89]) ).

thf(c_0_95,plain,
    p208,
    inference(split_conjunct,[status(thm)],[ax1536]) ).

thf(c_0_96,plain,
    ( p31
    | ~ p33 ),
    inference(fof_simplification,[status(thm)],[ax1716]) ).

thf(c_0_97,plain,
    ( p29
    | ~ p31 ),
    inference(split_conjunct,[status(thm)],[c_0_90]) ).

thf(c_0_98,plain,
    ~ p29,
    inference(sr,[status(thm)],[c_0_91,c_0_92]) ).

thf(c_0_99,plain,
    ( ~ p210
    | ~ p22
    | p207 ),
    inference(fof_simplification,[status(thm)],[ax1533]) ).

thf(c_0_100,plain,
    ( p21
    | p22 ),
    inference(split_conjunct,[status(thm)],[ax1727]) ).

thf(c_0_101,plain,
    ( p210
    | ~ p209 ),
    inference(split_conjunct,[status(thm)],[c_0_93]) ).

thf(c_0_102,plain,
    p209,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_94,c_0_95])]) ).

thf(c_0_103,plain,
    ( p33
    | ~ p35 ),
    inference(fof_simplification,[status(thm)],[ax1714]) ).

thf(c_0_104,plain,
    ( p31
    | ~ p33 ),
    inference(split_conjunct,[status(thm)],[c_0_96]) ).

thf(c_0_105,plain,
    ~ p31,
    inference(sr,[status(thm)],[c_0_97,c_0_98]) ).

thf(c_0_106,plain,
    ( ~ p207
    | ( fid
      = ( fpush @ fone @ fsh ) ) ),
    inference(fof_nnf,[status(thm)],[pax207]) ).

thf(c_0_107,plain,
    ( p207
    | ~ p210
    | ~ p22 ),
    inference(split_conjunct,[status(thm)],[c_0_99]) ).

thf(c_0_108,plain,
    p22,
    inference(sr,[status(thm)],[c_0_100,c_0_82]) ).

thf(c_0_109,plain,
    p210,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_101,c_0_102])]) ).

thf(c_0_110,plain,
    ! [X3261: term] :
      ( ~ p6
      | ( ( fsub @ X3261 @ fid )
        = X3261 ) ),
    inference(shift_quantors,[status(thm)],[inference(variable_rename,[status(thm)],[inference(fof_nnf,[status(thm)],[pax6])])]) ).

thf(c_0_111,plain,
    ( p5
    | p6 ),
    inference(split_conjunct,[status(thm)],[ax1743]) ).

thf(c_0_112,plain,
    ( p35
    | ~ p37 ),
    inference(fof_simplification,[status(thm)],[ax1712]) ).

thf(c_0_113,plain,
    ( p33
    | ~ p35 ),
    inference(split_conjunct,[status(thm)],[c_0_103]) ).

thf(c_0_114,plain,
    ~ p33,
    inference(sr,[status(thm)],[c_0_104,c_0_105]) ).

thf(c_0_115,plain,
    ( ( ( fsub @ f__0 @ ( fpush @ fone @ fsh ) )
     != f__0 )
    | p463 ),
    inference(fof_nnf,[status(thm)],[inference(fof_simplification,[status(thm)],[nax463])]) ).

thf(c_0_116,plain,
    ( ( fid
      = ( fpush @ fone @ fsh ) )
    | ~ p207 ),
    inference(split_conjunct,[status(thm)],[c_0_106]) ).

thf(c_0_117,plain,
    p207,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[c_0_107,c_0_108]),c_0_109])]) ).

thf(c_0_118,plain,
    ! [X1: term] :
      ( ( ( fsub @ X1 @ fid )
        = X1 )
      | ~ p6 ),
    inference(split_conjunct,[status(thm)],[c_0_110]) ).

thf(c_0_119,plain,
    p6,
    inference(sr,[status(thm)],[c_0_111,c_0_58]) ).

thf(c_0_120,plain,
    ( p37
    | ~ p39 ),
    inference(fof_simplification,[status(thm)],[ax1710]) ).

thf(c_0_121,plain,
    ( p35
    | ~ p37 ),
    inference(split_conjunct,[status(thm)],[c_0_112]) ).

thf(c_0_122,plain,
    ~ p35,
    inference(sr,[status(thm)],[c_0_113,c_0_114]) ).

thf(c_0_123,plain,
    ( ~ p74
    | ~ p463 ),
    inference(fof_simplification,[status(thm)],[ax1273]) ).

thf(c_0_124,plain,
    ( p463
    | ( ( fsub @ f__0 @ ( fpush @ fone @ fsh ) )
     != f__0 ) ),
    inference(split_conjunct,[status(thm)],[c_0_115]) ).

thf(c_0_125,plain,
    ( ( fpush @ fone @ fsh )
    = fid ),
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_116,c_0_117])]) ).

thf(c_0_126,plain,
    ! [X1: term] :
      ( ( fsub @ X1 @ fid )
      = X1 ),
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_118,c_0_119])]) ).

thf(c_0_127,plain,
    ( p39
    | ~ p41 ),
    inference(fof_simplification,[status(thm)],[ax1708]) ).

thf(c_0_128,plain,
    ( p37
    | ~ p39 ),
    inference(split_conjunct,[status(thm)],[c_0_120]) ).

thf(c_0_129,plain,
    ~ p37,
    inference(sr,[status(thm)],[c_0_121,c_0_122]) ).

thf(c_0_130,plain,
    ( ~ p74
    | ~ p463 ),
    inference(split_conjunct,[status(thm)],[c_0_123]) ).

thf(c_0_131,plain,
    p463,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[inference(rw,[status(thm)],[c_0_124,c_0_125]),c_0_126])]) ).

thf(c_0_132,plain,
    ( p41
    | ~ p43 ),
    inference(fof_simplification,[status(thm)],[ax1706]) ).

thf(c_0_133,plain,
    ( p39
    | ~ p41 ),
    inference(split_conjunct,[status(thm)],[c_0_127]) ).

thf(c_0_134,plain,
    ~ p39,
    inference(sr,[status(thm)],[c_0_128,c_0_129]) ).

thf(c_0_135,plain,
    ( p71
    | ~ p73 ),
    inference(fof_simplification,[status(thm)],[ax1676]) ).

thf(c_0_136,plain,
    ( p73
    | p74 ),
    inference(split_conjunct,[status(thm)],[ax1675]) ).

thf(c_0_137,plain,
    ~ p74,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_130,c_0_131])]) ).

thf(c_0_138,plain,
    ( p43
    | ~ p45 ),
    inference(fof_simplification,[status(thm)],[ax1704]) ).

thf(c_0_139,plain,
    ( p41
    | ~ p43 ),
    inference(split_conjunct,[status(thm)],[c_0_132]) ).

thf(c_0_140,plain,
    ~ p41,
    inference(sr,[status(thm)],[c_0_133,c_0_134]) ).

thf(c_0_141,plain,
    ( p69
    | ~ p71 ),
    inference(fof_simplification,[status(thm)],[ax1678]) ).

thf(c_0_142,plain,
    ( p71
    | ~ p73 ),
    inference(split_conjunct,[status(thm)],[c_0_135]) ).

thf(c_0_143,plain,
    p73,
    inference(sr,[status(thm)],[c_0_136,c_0_137]) ).

thf(c_0_144,plain,
    ( p45
    | ~ p47 ),
    inference(fof_simplification,[status(thm)],[ax1702]) ).

thf(c_0_145,plain,
    ( p43
    | ~ p45 ),
    inference(split_conjunct,[status(thm)],[c_0_138]) ).

thf(c_0_146,plain,
    ~ p43,
    inference(sr,[status(thm)],[c_0_139,c_0_140]) ).

thf(c_0_147,plain,
    ( p67
    | ~ p69 ),
    inference(fof_simplification,[status(thm)],[ax1680]) ).

thf(c_0_148,plain,
    ( p69
    | ~ p71 ),
    inference(split_conjunct,[status(thm)],[c_0_141]) ).

thf(c_0_149,plain,
    p71,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_142,c_0_143])]) ).

thf(c_0_150,plain,
    ( p47
    | ~ p49 ),
    inference(fof_simplification,[status(thm)],[ax1700]) ).

thf(c_0_151,plain,
    ( p45
    | ~ p47 ),
    inference(split_conjunct,[status(thm)],[c_0_144]) ).

thf(c_0_152,plain,
    ~ p45,
    inference(sr,[status(thm)],[c_0_145,c_0_146]) ).

thf(c_0_153,plain,
    ( p65
    | ~ p67 ),
    inference(fof_simplification,[status(thm)],[ax1682]) ).

thf(c_0_154,plain,
    ( p67
    | ~ p69 ),
    inference(split_conjunct,[status(thm)],[c_0_147]) ).

thf(c_0_155,plain,
    p69,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_148,c_0_149])]) ).

thf(c_0_156,plain,
    ( p49
    | ~ p51 ),
    inference(fof_simplification,[status(thm)],[ax1698]) ).

thf(c_0_157,plain,
    ( p47
    | ~ p49 ),
    inference(split_conjunct,[status(thm)],[c_0_150]) ).

thf(c_0_158,plain,
    ~ p47,
    inference(sr,[status(thm)],[c_0_151,c_0_152]) ).

thf(c_0_159,plain,
    ( p63
    | ~ p65 ),
    inference(fof_simplification,[status(thm)],[ax1684]) ).

thf(c_0_160,plain,
    ( p65
    | ~ p67 ),
    inference(split_conjunct,[status(thm)],[c_0_153]) ).

thf(c_0_161,plain,
    p67,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_154,c_0_155])]) ).

thf(c_0_162,plain,
    ( p51
    | ~ p53 ),
    inference(fof_simplification,[status(thm)],[ax1696]) ).

thf(c_0_163,plain,
    ( p49
    | ~ p51 ),
    inference(split_conjunct,[status(thm)],[c_0_156]) ).

thf(c_0_164,plain,
    ~ p49,
    inference(sr,[status(thm)],[c_0_157,c_0_158]) ).

thf(c_0_165,plain,
    ( p61
    | ~ p63 ),
    inference(fof_simplification,[status(thm)],[ax1686]) ).

thf(c_0_166,plain,
    ( p63
    | ~ p65 ),
    inference(split_conjunct,[status(thm)],[c_0_159]) ).

thf(c_0_167,plain,
    p65,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_160,c_0_161])]) ).

thf(c_0_168,plain,
    ( p53
    | ~ p55 ),
    inference(fof_simplification,[status(thm)],[ax1694]) ).

thf(c_0_169,plain,
    ( p51
    | ~ p53 ),
    inference(split_conjunct,[status(thm)],[c_0_162]) ).

thf(c_0_170,plain,
    ~ p51,
    inference(sr,[status(thm)],[c_0_163,c_0_164]) ).

thf(c_0_171,plain,
    ( p59
    | ~ p61 ),
    inference(fof_simplification,[status(thm)],[ax1688]) ).

thf(c_0_172,plain,
    ( p61
    | ~ p63 ),
    inference(split_conjunct,[status(thm)],[c_0_165]) ).

thf(c_0_173,plain,
    p63,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_166,c_0_167])]) ).

thf(c_0_174,plain,
    ( p55
    | ~ p57 ),
    inference(fof_simplification,[status(thm)],[ax1692]) ).

thf(c_0_175,plain,
    ( p53
    | ~ p55 ),
    inference(split_conjunct,[status(thm)],[c_0_168]) ).

thf(c_0_176,plain,
    ~ p53,
    inference(sr,[status(thm)],[c_0_169,c_0_170]) ).

thf(c_0_177,plain,
    ( p57
    | ~ p59 ),
    inference(fof_simplification,[status(thm)],[ax1690]) ).

thf(c_0_178,plain,
    ( p59
    | ~ p61 ),
    inference(split_conjunct,[status(thm)],[c_0_171]) ).

thf(c_0_179,plain,
    p61,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_172,c_0_173])]) ).

thf(c_0_180,plain,
    ( p55
    | ~ p57 ),
    inference(split_conjunct,[status(thm)],[c_0_174]) ).

thf(c_0_181,plain,
    ~ p55,
    inference(sr,[status(thm)],[c_0_175,c_0_176]) ).

thf(c_0_182,plain,
    ( p57
    | ~ p59 ),
    inference(split_conjunct,[status(thm)],[c_0_177]) ).

thf(c_0_183,plain,
    p59,
    inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_178,c_0_179])]) ).

thf(c_0_184,plain,
    ~ p57,
    inference(sr,[status(thm)],[c_0_180,c_0_181]) ).

thf(c_0_185,plain,
    $false,
    inference(sr,[status(thm)],[inference(cn,[status(thm)],[inference(rw,[status(thm)],[c_0_182,c_0_183])]),c_0_184]),
    [proof] ).

thf(1,plain,
    $false,
    inference(eprover,[status(thm),assumptions([h0])],]) ).

thf(0,theorem,
    ( ! [X1: term,X2: term,X3: subst] :
        ( ( sub @ ( ap @ X1 @ X2 ) @ X3 )
        = ( ap @ ( sub @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) ) )
   => ( ! [X1: term,X2: subst] :
          ( ( sub @ one @ ( push @ X1 @ X2 ) )
          = X1 )
     => ( ! [X1: term] :
            ( ( sub @ X1 @ id )
            = X1 )
       => ( ! [X1: term,X2: subst] :
              ( ( sub @ ( lam @ X1 ) @ X2 )
              = ( lam @ ( sub @ X1 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) )
         => ( ! [X1: term,X2: subst,X3: subst] :
                ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
                = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
           => ( ! [X1: subst] :
                  ( ( comp @ id @ X1 )
                  = X1 )
             => ( ! [X1: term,X2: subst] :
                    ( ( comp @ sh @ ( push @ X1 @ X2 ) )
                    = X2 )
               => ( ! [X1: subst,X2: subst,X3: subst] :
                      ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                      = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
                 => ( ! [X1: term,X2: subst,X3: subst] :
                        ( ( comp @ ( push @ X1 @ X2 ) @ X3 )
                        = ( push @ ( sub @ X1 @ X3 ) @ ( comp @ X2 @ X3 ) ) )
                   => ( ! [X1: subst] :
                          ( ( comp @ X1 @ id )
                          = X1 )
                     => ( ( ( push @ one @ sh )
                          = id )
                       => ( ! [X1: subst] :
                              ( ( push @ ( sub @ one @ X1 ) @ ( comp @ sh @ X1 ) )
                              = X1 )
                         => ( ( var @ one )
                           => ( ! [X1: term] :
                                  ( ( var @ X1 )
                                 => ( var @ ( sub @ X1 @ sh ) ) )
                             => ( ! [X1: term > $o] :
                                    ( ( X1 @ one )
                                   => ( ! [X2: term] :
                                          ( ( var @ X2 )
                                         => ( ( X1 @ X2 )
                                           => ( X1 @ ( sub @ X2 @ sh ) ) ) )
                                     => ! [X2: term] :
                                          ( ( var @ X2 )
                                         => ( X1 @ X2 ) ) ) )
                               => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                      ( ( ( ap @ X1 @ X3 )
                                        = ( ap @ X2 @ X4 ) )
                                     => ( X1 = X2 ) )
                                 => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                        ( ( ( ap @ X1 @ X3 )
                                          = ( ap @ X2 @ X4 ) )
                                       => ( X3 = X4 ) )
                                   => ( ! [X1: term,X2: term] :
                                          ( ( ( lam @ X1 )
                                            = ( lam @ X2 ) )
                                         => ( X1 = X2 ) )
                                     => ( ! [X1: term,X2: term] :
                                            ( ( ( sub @ X1 @ sh )
                                              = ( sub @ X2 @ sh ) )
                                           => ( X1 = X2 ) )
                                       => ( ! [X1: term,X2: term,X3: term] :
                                              ( ( lam @ X1 )
                                             != ( ap @ X2 @ X3 ) )
                                         => ( ! [X1: term,X2: term] :
                                                ~ ( var @ ( ap @ X1 @ X2 ) )
                                           => ( ! [X1: term] :
                                                  ~ ( var @ ( lam @ X1 ) )
                                             => ( ! [X1: term > $o] :
                                                    ( ! [X2: term] :
                                                        ( ( var @ X2 )
                                                       => ( X1 @ X2 ) )
                                                   => ( ! [X2: term,X3: term] :
                                                          ( ( X1 @ X2 )
                                                         => ( ( X1 @ X3 )
                                                           => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                     => ( ! [X2: term] :
                                                            ( ( X1 @ X2 )
                                                           => ( X1 @ ( lam @ X2 ) ) )
                                                       => ( !! @ X1 ) ) ) )
                                               => ( ! [X1: term > $o,X2: term,X3: subst] :
                                                      ( ! [X4: term] :
                                                          ( ( var @ X4 )
                                                         => ( X1 @ ( sub @ X4 @ X3 ) ) )
                                                     => ( ( X1 @ X2 )
                                                       => ! [X4: term] :
                                                            ( ( var @ X4 )
                                                           => ( X1 @ ( sub @ X4 @ ( push @ X2 @ X3 ) ) ) ) ) )
                                                 => ( ! [X1: term > $o] :
                                                        ( ! [X2: term,X3: term] :
                                                            ( ( X1 @ X2 )
                                                           => ( ( X1 @ X3 )
                                                             => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                       => ( ! [X2: term] :
                                                              ( ! [X3: term] :
                                                                  ( ( X1 @ X3 )
                                                                 => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                                                             => ( X1 @ ( lam @ X2 ) ) )
                                                         => ! [X2: term,X3: subst] :
                                                              ( ! [X4: term] :
                                                                  ( ( var @ X4 )
                                                                 => ( X1 @ ( sub @ X4 @ X3 ) ) )
                                                             => ( X1 @ ( sub @ X2 @ X3 ) ) ) ) )
                                                   => ( ! [X1: term > $o] :
                                                          ( ! [X2: term] :
                                                              ( ( var @ X2 )
                                                             => ( X1 @ X2 ) )
                                                         => ( ! [X2: term,X3: term] :
                                                                ( ( X1 @ X2 )
                                                               => ( ( X1 @ X3 )
                                                                 => ( X1 @ ( ap @ X2 @ X3 ) ) ) )
                                                           => ( ! [X2: term] :
                                                                  ( ! [X3: term] :
                                                                      ( ( X1 @ X3 )
                                                                     => ( X1 @ ( sub @ X2 @ ( push @ X3 @ id ) ) ) )
                                                                 => ( X1 @ ( lam @ X2 ) ) )
                                                             => ( !! @ X1 ) ) ) )
                                                     => ( ~ ( ~ ( ! [X1: subst,X2: subst,X3: subst] :
                                                                    ( ( comp @ ( comp @ X1 @ X2 ) @ X3 )
                                                                    = ( comp @ X1 @ ( comp @ X2 @ X3 ) ) )
                                                               => ~ ! [X1: subst] :
                                                                      ( ( comp @ id @ X1 )
                                                                      = X1 ) )
                                                           => ~ ! [X1: subst] :
                                                                  ( ( comp @ X1 @ id )
                                                                  = X1 ) )
                                                       => ( ~ ( ! [X1: term,X2: subst,X3: subst] :
                                                                  ( ( sub @ ( sub @ X1 @ X2 ) @ X3 )
                                                                  = ( sub @ X1 @ ( comp @ X2 @ X3 ) ) )
                                                             => ~ ! [X1: term] :
                                                                    ( ( sub @ X1 @ id )
                                                                    = X1 ) )
                                                         => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                ( ( ( hoasap @ id @ X1 @ id @ X3 )
                                                                  = ( hoasap @ id @ X2 @ id @ X4 ) )
                                                               => ( X1 = X2 ) )
                                                           => ( ! [X1: term,X2: term,X3: term,X4: term] :
                                                                  ( ( ( hoasap @ id @ X1 @ id @ X3 )
                                                                    = ( hoasap @ id @ X2 @ id @ X4 ) )
                                                                 => ( X3 = X4 ) )
                                                             => ( ! [X1: subst > term > term] :
                                                                    ( ! [X2: subst,X3: term,X4: subst] :
                                                                        ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                        = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                   => ! [X2: subst > term > term] :
                                                                        ( ! [X3: subst,X4: term,X5: subst] :
                                                                            ( ( sub @ ( X2 @ X3 @ X4 ) @ X5 )
                                                                            = ( X2 @ ( comp @ X3 @ X5 ) @ ( sub @ X4 @ X5 ) ) )
                                                                       => ( ( ( hoaslam @ id @ X1 )
                                                                            = ( hoaslam @ id @ X2 ) )
                                                                         => ! [X3: subst,X4: term] :
                                                                              ( ( X1 @ X3 @ X4 )
                                                                              = ( X2 @ X3 @ X4 ) ) ) ) )
                                                               => ( ! [X1: subst > term > term] :
                                                                      ( ! [X2: subst,X3: term,X4: subst] :
                                                                          ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                          = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                     => ! [X2: term,X3: term] :
                                                                          ( ( hoaslam @ id @ X1 )
                                                                         != ( hoasap @ id @ X2 @ id @ X3 ) ) )
                                                                 => ( ! [X1: subst > term > term] :
                                                                        ( ! [X2: subst,X3: term,X4: subst] :
                                                                            ( ( sub @ ( X1 @ X2 @ X3 ) @ X4 )
                                                                            = ( X1 @ ( comp @ X2 @ X4 ) @ ( sub @ X3 @ X4 ) ) )
                                                                       => ~ ( hoasvar @ id @ ( hoaslam @ id @ X1 ) @ id ) )
                                                                   => ( ! [X1: term,X2: term] :
                                                                          ~ ( hoasvar @ id @ ( hoasap @ id @ X1 @ id @ X2 ) @ id )
                                                                     => ( ! [X1: subst > term > subst > $o] :
                                                                            ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                                                                               => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                                                                           => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                  ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                                                                                 => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
                                                                             => ( ! [X2: term] :
                                                                                    ( ( hoasvar @ id @ X2 @ id )
                                                                                   => ( X1 @ id @ X2 @ id ) )
                                                                               => ! [X2: term] :
                                                                                    ( ( var @ X2 )
                                                                                   => ( X1 @ id @ X2 @ id ) ) ) ) )
                                                                       => ( ! [X1: subst > term > subst > $o] :
                                                                              ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                  ( ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) )
                                                                                 => ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 ) )
                                                                             => ( ! [X2: subst,X3: term,X4: subst,X5: subst] :
                                                                                    ( ( X1 @ ( comp @ X2 @ X5 ) @ ( sub @ X3 @ X5 ) @ X4 )
                                                                                   => ( X1 @ X2 @ X3 @ ( comp @ X5 @ X4 ) ) )
                                                                               => ( ! [X2: term,X3: term] :
                                                                                      ( ( X1 @ id @ X2 @ id )
                                                                                     => ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( hoasap @ id @ X2 @ id @ X3 ) @ id ) ) )
                                                                                 => ! [X2: term,X3: term] :
                                                                                      ( ( X1 @ id @ X2 @ id )
                                                                                     => ( ( X1 @ id @ X3 @ id )
                                                                                       => ( X1 @ id @ ( ap @ X2 @ X3 ) @ id ) ) ) ) ) )
                                                                         => ! [X1: term] :
                                                                              ~ ! [X2: subst > term > term] :
                                                                                  ( ( sub @ X1 @ ( push @ one @ sh ) )
                                                                                 != ( X2 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(contra,[status(thm),contra(discharge,[h0])],[1,h0]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.03/0.12  % Problem  : ALG267^1 : TPTP v8.1.0. Bugfixed v5.2.0.
% 0.03/0.13  % Command  : satallax -E eprover-ho -P picomus -M modes -p tstp -t %d %s
% 0.13/0.34  % Computer : n026.cluster.edu
% 0.13/0.34  % Model    : x86_64 x86_64
% 0.13/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34  % Memory   : 8042.1875MB
% 0.13/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34  % CPULimit : 300
% 0.13/0.34  % WCLimit  : 600
% 0.13/0.34  % DateTime : Thu Jun  9 00:04:32 EDT 2022
% 0.13/0.34  % CPUTime  : 
% 287.30/286.27  % SZS status Theorem
% 287.30/286.27  % Mode: mode328:USE_SINE=true:SINE_TOLERANCE=5.0:SINE_GENERALITY_THRESHOLD=4:SINE_RANK_LIMIT=2.:SINE_DEPTH=0
% 287.30/286.27  % Inferences: 8364
% 287.30/286.27  % SZS output start Proof
% See solution above
%------------------------------------------------------------------------------